home *** CD-ROM | disk | FTP | other *** search
/ Technotools / Technotools (Chestnut CD-ROM)(1993).ISO / lang_asm / ma22#1 / mcasm#1.doc < prev    next >
Encoding:
Text File  |  1992-02-05  |  66.0 KB  |  1,811 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.                                MICEPT INSTRUMENTS INC.                               MICEPT INSTRUMENTS INC.
  26.  
  27.                              Cross Assemblers (Series I)                             Cross Assemblers (Series I)
  28.                                      Version 2.20                                     Version 2.20
  29.  
  30.                                     USER'S MANUAL                                    USER'S MANUAL
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.                               Micept Instruments Inc.
  57.                               377 Julien St.
  58.                               Cap De La Madeleine, PQ
  59.                               Canada  G8T 6W6
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.           DISCLAIMER          DISCLAIMER
  77.  
  78.           Micept  Instruments  Inc.  disclaims all  warranties  as  to this
  79.           software  and the  documentation,  whether  express  or  implied,
  80.           including,   without  limitation,   any  implied   warranties  of
  81.           merchantability   and  of   fitness  for   any  purpose.   Micept
  82.           Instruments  Inc. assumes  no liability  for  damages, direct  or
  83.           consequential, which may results from the use of this software or
  84.           the documentation.
  85.  
  86.           Information in this document is subject to change without notice.
  87.  
  88.           Copyright (C) 1991, 1992 by Micept Instruments Inc.
  89.  
  90.  
  91.           COPYRIGHT INFORMATION          COPYRIGHT INFORMATION
  92.  
  93.           This version of  the software is  distributed as shareware.  This
  94.           version  may  be  freely copied  and  distributed  for evaluation
  95.           purposes  as  long  as NO  FEE  IS  CHARGE  FOR  USE, COPYING  OR
  96.           DISTRIBUTION (EXCEPT FOR A NOMINAL DISTRIBUTION FEE PROVIDED THAT
  97.           IT IS NO MORE THAN $5 TOTAL) and  as long as THE SOFTWARE PACKAGE
  98.           IS NOT MODIFIED IN ANY WAY.
  99.  
  100.           USE  OF THIS  SOFTWARE  BEYOND  A  REASONABLE  EVALUATION  PERIOD
  101.           REQUIRES REGISTRATION.
  102.  
  103.           The   entire   package,   consisting   of   the   main  programs,
  104.           documentation  file and various  utility files are  all copyright
  105.           (C) 1991, 1992 by Micept Instruments Inc. All rights reserved.
  106.  
  107.           Intel is a registered trademark of Intel Corporation.
  108.           Zilog and Z80 are registered trademarks of Zilog Inc.
  109.           MS-DOS is a trademark of Microsoft Corporation.
  110.           IBM, PC, XT, AT are trademarks of International Business Machines
  111.           Corporation.
  112.           All   brand  and  product  names  are  trademarks  or  registered
  113.           trademarks of their respective companies.
  114.  
  115.  
  116.  
  117.  
  118.  
  119.                                   TABLE OF CONTENTS                                  TABLE OF CONTENTS
  120.  
  121.  
  122.           1. INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . .   1
  123.  
  124.           2. INSTALLATION . . . . . . . . . . . . . . . . . . . . . . .   1
  125.  
  126.           3. SYSTEM REQUIREMENTS  . . . . . . . . . . . . . . . . . . .   1
  127.  
  128.           4. FILES IN THE PACKAGE . . . . . . . . . . . . . . . . . . .   1
  129.  
  130.           5. FORMAT OF COMMANDS . . . . . . . . . . . . . . . . . . . .   2
  131.  
  132.           6. COMMAND LINE . . . . . . . . . . . . . . . . . . . . . . .   2
  133.                6.1 Invocation . . . . . . . . . . . . . . . . . . . . .   2
  134.                6.2 Options in more details  . . . . . . . . . . . . . .   3
  135.                6.3 Error codes returned to DOS  . . . . . . . . . . . .   5
  136.                6.4 Object code file formats . . . . . . . . . . . . . .   5
  137.                6.5 Environment variable . . . . . . . . . . . . . . . .   5
  138.  
  139.           7. SOURCE LINE FORMAT . . . . . . . . . . . . . . . . . . . .   5
  140.                Label  . . . . . . . . . . . . . . . . . . . . . . . . .   6
  141.                Opcode . . . . . . . . . . . . . . . . . . . . . . . . .   6
  142.                Operand  . . . . . . . . . . . . . . . . . . . . . . . .   6
  143.                Comment  . . . . . . . . . . . . . . . . . . . . . . . .   6
  144.  
  145.           8. EXPRESSIONS IN THE OPERAND FIELD . . . . . . . . . . . . .   7
  146.                8.1 Symbols  . . . . . . . . . . . . . . . . . . . . . .   7
  147.                8.2 Constants  . . . . . . . . . . . . . . . . . . . . .   7
  148.                     Numeric constants . . . . . . . . . . . . . . . . .   7
  149.                     Character constants . . . . . . . . . . . . . . . .   8
  150.                     The location counter  . . . . . . . . . . . . . . .   8
  151.                8.3 Operators  . . . . . . . . . . . . . . . . . . . . .   8
  152.                8.4 How expressions are evaluated  . . . . . . . . . . .   9
  153.  
  154.           9. ASSEMBLER DIRECTIVES . . . . . . . . . . . . . . . . . . .   9
  155.                ACLIST . . . . . . . . . . . . . . . . . . . . . . . . .   9
  156.                DB . . . . . . . . . . . . . . . . . . . . . . . . . . .  10
  157.                DW . . . . . . . . . . . . . . . . . . . . . . . . . . .  10
  158.                END  . . . . . . . . . . . . . . . . . . . . . . . . . .  10
  159.                EQU  . . . . . . . . . . . . . . . . . . . . . . . . . .  10
  160.                LIST . . . . . . . . . . . . . . . . . . . . . . . . . .  10
  161.                LLEN . . . . . . . . . . . . . . . . . . . . . . . . . .  11
  162.                NOACLIST . . . . . . . . . . . . . . . . . . . . . . . .  11
  163.                NOLIST . . . . . . . . . . . . . . . . . . . . . . . . .  11
  164.                ORG  . . . . . . . . . . . . . . . . . . . . . . . . . .  11
  165.                PAGE . . . . . . . . . . . . . . . . . . . . . . . . . .  11
  166.                PLEN . . . . . . . . . . . . . . . . . . . . . . . . . .  12
  167.                REDEF  . . . . . . . . . . . . . . . . . . . . . . . . .  12
  168.                RSB  . . . . . . . . . . . . . . . . . . . . . . . . . .  12
  169.                RSW  . . . . . . . . . . . . . . . . . . . . . . . . . .  12
  170.                SET  . . . . . . . . . . . . . . . . . . . . . . . . . .  12
  171.                TITLE  . . . . . . . . . . . . . . . . . . . . . . . . .  13
  172.  
  173.  
  174.  
  175.  
  176.  
  177.           Micept Instruments Inc. - Cross Assemblers (Series I)         iii
  178.  
  179.  
  180.  
  181.           10. SPECIAL SECTION ON THE MICROPROCESSORS  . . . . . . . . .  14
  182.                10.1 Intel 8044  . . . . . . . . . . . . . . . . . . . .  14
  183.                10.2 Intel 8048  . . . . . . . . . . . . . . . . . . . .  17
  184.                10.3 Intel 8051/52 . . . . . . . . . . . . . . . . . . .  18
  185.                10.4 Intel 8080  . . . . . . . . . . . . . . . . . . . .  22
  186.                10.5 Intel 8085  . . . . . . . . . . . . . . . . . . . .  23
  187.                10.6 Intel 8096  . . . . . . . . . . . . . . . . . . . .  23
  188.                10.7 Zilog Z80 . . . . . . . . . . . . . . . . . . . . .  23
  189.  
  190.           11. BUG REPORTING PROCEDURE . . . . . . . . . . . . . . . . .  24
  191.  
  192.           12. UPDATE POLICY . . . . . . . . . . . . . . . . . . . . . .  24
  193.  
  194.           13. REGISTRATION  . . . . . . . . . . . . . . . . . . . . . .  25
  195.  
  196.           APPENDIX A - EXPANDED VERSION . . . . . . . . . . . . . . . .  26
  197.  
  198.           ORDERING INFORMATION  . . . . . . . . . . . . . . . . . . . .  27
  199.  
  200.           ORDER FORM  . . . . . . . . . . . . . . . . . . . . . . . . .  28
  201.  
  202.           INDEX . . . . . . . . . . . . . . . . . . . . . . . . . . . .  29
  203.  
  204.  
  205.  
  206.  
  207.  
  208.           Micept Instruments Inc. - Cross Assemblers (Series I)           1
  209.  
  210.  
  211.  
  212.           1. INTRODUCTION          1. INTRODUCTION
  213.  
  214.           This  software are shareware distributed versions of high quality
  215.           Macro  Cross Assemblers  which you get  when you  register. These
  216.           versions  however do not support macros, conditional assembly and
  217.           included files like their expanded versions do. This software are
  218.           basic  two-pass assemblers  for the  Intel  8051/52, 8044,  8048,
  219.           8080, 8085, 8096 and the Zilog Z80 microprocessors.
  220.  
  221.           These powerful cross  assemblers for the MS-DOS  operating system
  222.           support  the  complete instruction  set  and  a complete  set  of
  223.           directives.  They also  support  the  8051/52  and  8044  special
  224.           function registers and their assigned bit names. These assemblers
  225.           can produce formatted  listing files and object code  in both the
  226.           Intel Hex and the Motorola Hex formats.
  227.  
  228.           The supported assembler directives are  the same as the ones used
  229.           by  the microprocessor manufacturers, but you can customized them
  230.           to your liking using the REDEF directive.
  231.  
  232.  
  233.           2. INSTALLATION          2. INSTALLATION
  234.  
  235.           Make  a working  copy of  your disk, using  the COPY  or DISKCOPY
  236.           utility supplied with MS-DOS. Save the original disk for backup.
  237.  
  238.           No  particular installation is  required except that  you have to
  239.           copy the executable files you will need to the disk you are going
  240.           to use.
  241.  
  242.  
  243.           3. SYSTEM REQUIREMENTS          3. SYSTEM REQUIREMENTS
  244.  
  245.                - IBM PC/XT/AT or compatible computer
  246.                - DOS 2.0 or later
  247.                - 256K Bytes of RAM required (more for bigger symbol table)
  248.  
  249.  
  250.           4. FILES IN THE PACKAGE          4. FILES IN THE PACKAGE
  251.  
  252.                README#1       The file containing the latest information
  253.                ORDER#1.FRM    The file containing the ready to print
  254.                               registration form
  255.                MCASM#1.DOC    This file !
  256.                MA44.EXE       The executable file of the 8044 Cross
  257.                               Assembler
  258.                MA48.EXE       The executable file of the 8048 Cross
  259.                               Assembler
  260.                MA51.EXE       The executable file of the 8051/52 Cross
  261.                               Assembler
  262.  
  263.  
  264.  
  265.  
  266.  
  267.           Micept Instruments Inc. - Cross Assemblers (Series I)           2
  268.  
  269.  
  270.  
  271.                MA80.EXE       The executable file of the 8080 Cross
  272.                               Assembler
  273.                MA85.EXE       The executable file of the 8085 Cross
  274.                               Assembler
  275.                MA96.EXE       The executable file of the 8096 Cross
  276.                               Assembler
  277.                MAZ80.EXE      The executable file of the Z80 Cross
  278.                               Assembler
  279.  
  280.  
  281.           5. FORMAT OF COMMANDS          5. FORMAT OF COMMANDS
  282.  
  283.           The following rules are used in this manual:
  284.  
  285.                1.   Words  in  capital  letters are  keywords  and  must be
  286.                     entered as shown. They  may be entered in  uppercase or
  287.                     lowercase characters.
  288.  
  289.                2.   Items in square brackets ([]) are optional.
  290.  
  291.                3.   Symbolic fields are enclosed in < >.
  292.  
  293.                4.   An  ellipsis  (...)  indicates  that  an  item  may  be
  294.                     repeated as many time as you wish.
  295.  
  296.                5.   All punctuation, except the one mentioned  before, must
  297.                     be included where shown.
  298.  
  299.                6.   xxx is a two or three character string representing the
  300.                     microprocessor identification.
  301.                     This string is:
  302.  
  303.                     44  : for the Intel 8044 microprocessor
  304.                     48  : for the Intel 8048 microprocessor
  305.                     51  : for the Intel 8051/52 microprocessor
  306.                     80  : for the Intel 8080 microprocessor
  307.                     85  : for the Intel 8085 microprocessor
  308.                     96  : for the Intel 8096 microprocessor
  309.                     Z80 : for the Zilog Z80 microprocessor
  310.  
  311.  
  312.           6. COMMAND LINE          6. COMMAND LINE
  313.  
  314.           6.1 Invocation
  315.  
  316.                These assemblers can be invoked as follow:
  317.  
  318.                MAxxx [<options>] <sourcefile> [<objfile> [<listfile>]]
  319.  
  320.  
  321.  
  322.  
  323.  
  324.           Micept Instruments Inc. - Cross Assemblers (Series I)           3
  325.  
  326.  
  327.  
  328.                Where  <options>  can  be  one  or  more  of  the  following
  329.                separated by spaces:
  330.  
  331.                -l : Produce a listing file
  332.                -o : Produce NO object file
  333.                -t : Produce NO symbol table in the listing
  334.                -m : Produce object in Motorola Hex
  335.                -q : Quiet mode
  336.                -p<n> : Set listing page length (in lines per page)
  337.                -w<n> : Set listing width (in characters per line)
  338.                -r<n> : Set object record size (in bytes)
  339.                -x : Use extended special function register set for 8052
  340.                -c : Produce complete object in listing for long constants
  341.  
  342.                <sourcefile>  : Source file name.  Default extension ".xxx".
  343.                <objfile>     : Object file name.  Default extension ".OBJ".
  344.                <listfile>    : Listing file name. Default extension ".LST".
  345.  
  346.                If the  assembler is  invoked with an  error in  the command
  347.                line, a help screen is displayed on the console.
  348.  
  349.                For <objfile>  and <listfile>, if no name  is specified, the
  350.                source file  name with the  default extensions will  be used
  351.                and the files will be created in the current directory.
  352.  
  353.  
  354.           6.2 Options in more details
  355.  
  356.                c -  Complete  object code  in listing  for long  constants.
  357.                     This is used to see  all object codes generated by long
  358.                     constants,  like strings and  series of data.  A source
  359.                     line  may  then  generate more  than  one  line  in the
  360.                     listing because only a few  object codes can be written
  361.                     on one line of listing.
  362.  
  363.                l -  Listing  file.  This  option enables  the  output  to a
  364.                     listing file. The listing produced has page headers and
  365.                     footers inserted  at appropriate  intervals. Even  when
  366.                     the option is invoked, the  output to the listing  file
  367.                     will be controlled by the LIST and NOLIST directives.
  368.  
  369.                m -  Motorola Hex format. This option causes the object file
  370.                     to be produced in  the Motorola Hex format  rather than
  371.                     the default Intel Hex format.
  372.  
  373.                o -  Object file disabled. This option suppresses the output
  374.                     to an object file.
  375.  
  376.  
  377.  
  378.  
  379.  
  380.           Micept Instruments Inc. - Cross Assemblers (Series I)           4
  381.  
  382.  
  383.  
  384.                p -  Page  length. This option sets  the number of lines per
  385.                     page  in  the listing  file.  When  a listing  file  is
  386.                     produced, since page headers and  footers are inserted,
  387.                     a  page length is required. If this option, immediately
  388.                     followed  by a numeric  constant, is invoked,  the page
  389.                     length will  be set  to that value.  The value  must be
  390.                     between 20  and 120  or it will  be ignored.  Even when
  391.                     this  option is  invoked,  the page  length may  be set
  392.                     again anywhere in  the file by the PLEN  directive. The
  393.                     default page length is 66 lines.
  394.  
  395.                q -  Quiet mode. This option turns  off the display of  line
  396.                     numbers  during  assembly.  Normally  a running  count,
  397.                     incremented  by  50s,  of the  numbers  of  lines being
  398.                     assembled is displayed on the console.
  399.  
  400.                r -  Record size  in the object  file. This option  sets the
  401.                     number  of bytes in each object file record. The number
  402.                     selected is the number of counted bytes in the selected
  403.                     format. The number must be between 8 and 255 or it will
  404.                     be ignored.  If the m  option is invoked, the  r option
  405.                     must appear  after it in  the command line to  have any
  406.                     effect. The default record size in Intel Hex is 24. The
  407.                     default record size in Motorola Hex is 27.
  408.  
  409.                t -  Table of symbols  suppressed in the listing  file. This
  410.                     option suppresses the output of the symbol table in the
  411.                     listing  file. Of course if  output to the listing file
  412.                     is disabled at the end of the listing, the symbol table
  413.                     will not appear at the end of the listing file anyway.
  414.  
  415.                w -  Width of  the listing file. This option sets the number
  416.                     of characters  per line  in the  listing file.  If this
  417.                     option, immediately followed by  a numeric constant, is
  418.                     invoked, the line length will be set to that value. The
  419.                     value must be between 60 and 132 or it will be ignored.
  420.                     Even  when this option is  invoked, the line length may
  421.                     be  set  again  anywhere  in   the  file  by  the  LLEN
  422.                     directive. The default line length is 80 characters.
  423.  
  424.                x -  Extended  special function  register  set. This  option
  425.                     allows  the  use  of  the  extended  special   function
  426.                     register set and the extended special function register
  427.                     bit set of the 8052 microprocessor.
  428.  
  429.                Note:     Each option must be preceded  by a dash (-) in the
  430.                          command line, to distinguish it from a file name.
  431.  
  432.  
  433.  
  434.  
  435.  
  436.           Micept Instruments Inc. - Cross Assemblers (Series I)           5
  437.  
  438.  
  439.  
  440.           6.3 Error codes returned to DOS
  441.  
  442.                Condition                                    Error code
  443.                -------------------------------------------------------
  444.                Normal completion, without errors            0
  445.                Normal completion, with assembly errors      1
  446.                Abnormal completion, insufficient memory     2
  447.                Abnormal completion, file access error       3
  448.  
  449.  
  450.           6.4 Object code file formats
  451.  
  452.                Each assembler supports two object file formats:
  453.  
  454.                1. Intel Hex
  455.                2. Motorola Hex (S1-S9)
  456.  
  457.  
  458.           6.5 Environment variable
  459.  
  460.           Each assembler  environment can  be customized by  the use  of an
  461.           environment  variable. The  variable, if  set,  will specify  the
  462.           default  command  line  options. The  options  specified  in that
  463.           variable  will not replace but be added to the options invoked in
  464.           the command line.  Options are specified in the same manner as if
  465.           they  were invoked  in  the  command line.  The  setting of  this
  466.           variable can be  automatically done if the set  command is placed
  467.           in the AUTOEXEC.BAT file.
  468.  
  469.           The variable is called MAxxxOPT  and can be set by  the following
  470.           command:
  471.  
  472.                set MAxxxOPT=-l -m -r10h
  473.  
  474.           That command would invoked the l,  m and r options each time  the
  475.           assembler is invoked.
  476.  
  477.           Note: Any error in this environment variable will be ignored.
  478.  
  479.  
  480.           7. SOURCE LINE FORMAT          7. SOURCE LINE FORMAT
  481.  
  482.           Lines  in the  source  file  consist of  up  to  four fields,  as
  483.           follows:
  484.  
  485.                [Label] [Opcode] [Operand] [Comment]
  486.  
  487.                Each line  of the file may be up  to 256 characters long. An
  488.                arbitrary  number of  white  space  (spaces  or  tabs)  must
  489.                separate each field.
  490.  
  491.  
  492.  
  493.  
  494.  
  495.           Micept Instruments Inc. - Cross Assemblers (Series I)           6
  496.  
  497.  
  498.  
  499.                Label:
  500.  
  501.                Labels are  symbols and  follow the same  rules. If  a label
  502.                starts in  the first column,  it must be terminated  with at
  503.                least one white  space (space or tab) or the end of the line
  504.                but it may follow the rules of a label starting in any other
  505.                column. If a label  starts in any  other column, it must  be
  506.                terminated with a colon (:) followed with at least one white
  507.                space (space  or tab)  or the  end of  the line. The  ending
  508.                colon is never part of the symbol.
  509.  
  510.                A  line  may  consist  of  a  label  alone.  With  a  normal
  511.                instruction mnemonic  the assembler  assign a  value to  the
  512.                label equal to the current location counter.
  513.  
  514.  
  515.                Opcode:
  516.  
  517.                The operand field  contains the instruction mnemonic  or the
  518.                assembler directive that is to be performed. This field must
  519.                not start in the first column.
  520.  
  521.  
  522.                Operand:
  523.  
  524.                The operand field  may or may not be  required, depending on
  525.                the  opcode or directive  being assembled. If  present, this
  526.                field will contain a certain number of operand, separated by
  527.                commas. There  must not  be any white  space (space  or tab)
  528.                between these operand.
  529.  
  530.  
  531.                Comment:
  532.  
  533.                The  optional comment field is used for annotation purposes.
  534.                This field is  ignored by the assembler, but  is included in
  535.                the listing.  A semicolon  (;) is used  by the  assembler to
  536.                designate  the beginning  of a  comment and  it can  be used
  537.                anywhere in  the line, including  in the first column  for a
  538.                stand-alone comment.
  539.  
  540.  
  541.  
  542.  
  543.  
  544.           Micept Instruments Inc. - Cross Assemblers (Series I)           7
  545.  
  546.  
  547.  
  548.           8. EXPRESSIONS IN THE OPERAND FIELD          8. EXPRESSIONS IN THE OPERAND FIELD
  549.  
  550.           Expressions are combinations of constants, symbols, operators and
  551.           parentheses that are evaluated as an integer value.
  552.  
  553.  
  554.  
  555.  
  556.           8.1 Symbols
  557.  
  558.                Symbols are strings of characters that contain letters (A-Z,
  559.                a-z), numbers (0-9), points (.) and underscores (_) but they
  560.                must begin with a letter. A symbol may be of any length, but
  561.                only the  first 8  characters are  significant  and will  be
  562.                listed in the symbol table.  Since all lowercase letter will
  563.                be converted  to uppercase,  symbols  which are  capitalized
  564.                differently will be the same. A symbol can not be a reserved
  565.                word.
  566.  
  567.                examples:      LOOP
  568.                               loop_2
  569.                               key.buffer
  570.  
  571.                The reserved words are the one representing:
  572.  
  573.                     - the mnemonics and assembler directives.
  574.                     - the microprocessor's registers.
  575.  
  576.  
  577.           8.2 Constants
  578.  
  579.                Numeric constants:
  580.  
  581.                Numeric  constants must always  begin with a  decimal digit.
  582.                The radix is determine by a letter immediately following the
  583.                number according to the following table:
  584.  
  585.                Format         Suffix
  586.                ---------------------------
  587.                Binary         B
  588.                Octal          O or Q
  589.                Decimal        D or nothing
  590.                Hexadecimal    H
  591.  
  592.                examples:      10010001b
  593.                               7774Q
  594.                               17O
  595.                               18d
  596.                               255
  597.                               6fh
  598.  
  599.  
  600.  
  601.  
  602.  
  603.           Micept Instruments Inc. - Cross Assemblers (Series I)           8
  604.  
  605.  
  606.  
  607.                               0FEH
  608.  
  609.  
  610.                Character constants:
  611.  
  612.                A  character  constant  consists   of  one  ASCII  character
  613.                surrounded by single quote marks (').
  614.  
  615.                Note:     To  put a  single  quote  mark  into  a  character
  616.                          constant,  two  consecutive single  quotes  may be
  617.                          used to represent one such character.
  618.  
  619.                examples:      'a'
  620.                               '*'
  621.                               ''''
  622.  
  623.  
  624.                The location counter:
  625.  
  626.                The current value of  the location counter can be used in an
  627.                expression. It is represented by the dollar character ($).
  628.  
  629.  
  630.           8.3 Operators
  631.  
  632.                The  operators  allowed  in expressions  are  shown,  in the
  633.                following table, in descending order of precedence:
  634.  
  635.                Order  Operator   Type             Description
  636.                ----------------------------------------------------------
  637.                1.     ()         expression       parentheses
  638.                2.     -          unary            unary negative
  639.                       ~                           one's complement
  640.                3.     &          binary           bitwise AND
  641.                       !                           bitwise OR
  642.                       ^                           bitwise EXCLUSIVE OR
  643.                4.     *          multiplicative   multiplication
  644.                       /                           division
  645.                       %                           remainder
  646.                5.     +          additive         addition
  647.                       -                           subtraction
  648.                6.     <<         shift            shift left
  649.                       >>                          shift right
  650.                7.     =          relational       equal
  651.                       <                           less than
  652.                       >                           greater than
  653.                       <=                          less than or equal
  654.                       >=                          greater than or equal
  655.  
  656.  
  657.  
  658.  
  659.  
  660.           Micept Instruments Inc. - Cross Assemblers (Series I)           9
  661.  
  662.  
  663.  
  664.           8.4 How expressions are evaluated
  665.  
  666.                In  an expression  parenthetical  expressions are  evaluated
  667.                first,  the  innermost  parentheses before  the  outer ones.
  668.                Next, operations  involving higher precedence  operators are
  669.                done first. Where several operators have the same precedence
  670.                they  are  evaluated from  left  to right  except  for unary
  671.                operators  which are  evaluated  from  right  to  left.  All
  672.                intermediate values are truncated to a 16-bit integer value.
  673.                The result of the expression is also a 16-bit integer value.
  674.  
  675.  
  676.           9. ASSEMBLER DIRECTIVES          9. ASSEMBLER DIRECTIVES
  677.  
  678.                ----------------------------------------------------------
  679.                Assembly Control
  680.                     ORG          Set assembly origin
  681.                     END          End of source
  682.                     REDEF        Redefine an assembler directive
  683.                ----------------------------------------------------------
  684.                Symbol Definition
  685.                     EQU          Equate symbol value
  686.                     SET          Set symbol value (temporary)
  687.                ----------------------------------------------------------
  688.                Memory Allocation
  689.                     DB           Define constant byte(s)
  690.                     DW           Define constant word(s)
  691.                     RSB          Reserve storage for byte(s)
  692.                     RSW          Reserve storage for word(s)
  693.                ----------------------------------------------------------
  694.                Listing Control
  695.                     TITLE        Set title of page(s)
  696.                     LLEN         Set line length (characters per line)
  697.                     PLEN         Set page length (lines per page)
  698.                     PAGE         Advance to top of next page
  699.                     LIST         List the assembly
  700.                     NOLIST       Do not list the assembly
  701.                     ACLIST       List all object codes for long constants
  702.                     NOACLIST     Do not list all object codes
  703.                ----------------------------------------------------------
  704.  
  705.           Note:     Some of  these directives  have a  different name  with
  706.                     each microprocessor, so consult  the special section on
  707.                     the microprocessor you are using.
  708.  
  709.  
  710.                ACLIST
  711.  
  712.                Purpose:  This  directive  restores   the  listing  of   the
  713.                          complete object code for long constants.
  714.  
  715.  
  716.  
  717.  
  718.  
  719.           Micept Instruments Inc. - Cross Assemblers (Series I)          10
  720.  
  721.  
  722.  
  723.                Format:   ACLIST
  724.  
  725.  
  726.                DB
  727.  
  728.                Purpose:  This  directive allocates  and initializes  one or
  729.                          more bytes.
  730.  
  731.                Format:   [<label>] DB <expression>[,<expression>...]
  732.  
  733.                Remarks:  <expression> must be  an 8-bit integer value  or a
  734.                          string surrounded by single quote marks (').
  735.  
  736.  
  737.                DW
  738.  
  739.                Purpose:  This directive  allocates and  initializes one  or
  740.                          more words.
  741.  
  742.                Format:   [<label>] DW <expression>[,<expression>...]
  743.  
  744.                Remarks:  <expression> must be a 16-bit integer value.
  745.  
  746.  
  747.                END
  748.  
  749.                Purpose:  This directive  designates the  end of  the source
  750.                          file.
  751.  
  752.                Format:   END
  753.  
  754.                Remarks:  No line in the source file will be read after this
  755.                          directive.
  756.  
  757.  
  758.                EQU
  759.  
  760.                Purpose:  This directive  assigns the value  of <expression>
  761.                          to <label>.
  762.  
  763.                Format:   <label> EQU <expression>
  764.  
  765.                Remarks:  The <label> entry can not be redefined.
  766.  
  767.  
  768.                LIST
  769.  
  770.                Purpose:  This directive restores the output in the listing.
  771.  
  772.                Format:   LIST
  773.  
  774.  
  775.  
  776.  
  777.  
  778.           Micept Instruments Inc. - Cross Assemblers (Series I)          11
  779.  
  780.  
  781.  
  782.                Remarks:  If a  listing is  not being  made, this  directive
  783.                          will start one.
  784.  
  785.  
  786.                LLEN
  787.  
  788.                Purpose:  This directive  sets the number  of characters per
  789.                          line,   in   the   listing,  to   the   value   of
  790.                          <expression>.
  791.  
  792.                Format:   LLEN <expression>
  793.  
  794.                Remarks:  The  number of characters per line must be between
  795.                          60 and 132. The default is 80 characters per line.
  796.  
  797.  
  798.                NOACLIST
  799.  
  800.                Purpose:  This  directive  suppresses  the  listing  of  the
  801.                          complete object code for long constants.
  802.  
  803.                Format:   NOACLIST
  804.  
  805.  
  806.                NOLIST
  807.  
  808.                Purpose:  This  directive  suppresses   the  output  in  the
  809.                          listing.
  810.  
  811.                Format:   NOLIST
  812.  
  813.  
  814.                ORG
  815.  
  816.                Purpose:  This directive  sets the location  counter to  the
  817.                          value of <expression>.
  818.  
  819.                Format:   ORG <expression>
  820.  
  821.                Remarks:  <expression>   must  not   involved  any   forward
  822.                          references.
  823.  
  824.  
  825.                PAGE
  826.  
  827.                Purpose:  This directive starts a new page in the listing. 
  828.  
  829.                Format:   PAGE
  830.  
  831.  
  832.  
  833.  
  834.  
  835.           Micept Instruments Inc. - Cross Assemblers (Series I)          12
  836.  
  837.  
  838.  
  839.                PLEN
  840.  
  841.                Purpose:  This  directive sets the number of lines per page,
  842.                          in the listing, to the value of <expression>.
  843.  
  844.                Format:   PLEN <expression>
  845.  
  846.                Remarks:  The number  of lines per  page must be  between 20
  847.                          and  120. The default  is 66 characters  per line.
  848.                          The first  and the  last 3 lines  of the  page are
  849.                          left blank. The fourth and fifth line are used for
  850.                          the date, page number and page title.
  851.  
  852.  
  853.                REDEF
  854.  
  855.                Purpose:  This directive redefines the <directive> assembler
  856.                          directive to the <directive2> directive.
  857.  
  858.                Format:   REDEF <directive>,<directive2>
  859.  
  860.                Remarks:  This  allows you  to change the  name of  each and
  861.                          every directive to satisfy your particular  source
  862.                          file needs. You  can also use it to  make your own
  863.                          set of universal directives.
  864.  
  865.  
  866.                RSB
  867.  
  868.                Purpose:  This  directive reserves  a block  of <expression>
  869.                          byte(s) for storage.
  870.  
  871.                Format:   [<label>] RSB <expression>
  872.  
  873.                Remarks:  The number of bytes reserved must be between 1 and
  874.                          32767.
  875.  
  876.  
  877.                RSW
  878.  
  879.                Purpose:  This directive  reserves a  block of  <expression>
  880.                          word(s) for storage.
  881.  
  882.                Format:   [<label>] RSW <expression>
  883.  
  884.                Remarks:  The number of words reserved must be between 1 and
  885.                          16383.
  886.  
  887.  
  888.                SET
  889.  
  890.  
  891.  
  892.  
  893.  
  894.           Micept Instruments Inc. - Cross Assemblers (Series I)          13
  895.  
  896.  
  897.  
  898.                Purpose:  This directive assigns  the value of  <expression>
  899.                          to <label>.
  900.  
  901.                Format:   <label> SET <expression>
  902.  
  903.                Remarks:  The <label> entry can be redefined.
  904.  
  905.  
  906.                TITLE
  907.  
  908.                Purpose:  This directive sets  the title of the  current and
  909.                          following page(s) to the <text> string.
  910.  
  911.                Format:   TITLE <text>
  912.  
  913.                Remarks:  <text> is truncated to the first 60 characters.
  914.  
  915.  
  916.  
  917.  
  918.  
  919.           Micept Instruments Inc. - Cross Assemblers (Series I)          14
  920.  
  921.  
  922.  
  923.           10. SPECIAL SECTION ON THE MICROPROCESSORS          10. SPECIAL SECTION ON THE MICROPROCESSORS
  924.  
  925.           10.1 Intel 8044
  926.  
  927.                The reserved words in this assembler are:
  928.                A, AB, C, DPTR, R0, R1, R2, R3, R4, R5, R6, R7
  929.  
  930.  
  931.                Special Function Registers:
  932.  
  933.                The 8044 has Special Function Registers. These constants are
  934.                words   representing  the   8044  microprocessor   registers
  935.                accessible through the use of their addresses in the on-chip
  936.                RAM.
  937.  
  938.                These are predefined in this assembler:
  939.                ACC, B,  PSW, SP, DPL,  DPH, P0, P1,  P2, P3, IP,  IE, TMOD,
  940.                TCON, TH0, TL0,  TH1, TL1, FIFO, TBS, TBL,  TCB, NSNR, STAD,
  941.                RFL, RBS, RBL, RCB, SMD, STS, SMD
  942.  
  943.  
  944.                Special Function Register Bits:
  945.  
  946.                These  Special  Function  Registers  have   bits  which  are
  947.                directly accessible. These constants  are words representing
  948.                the 8044 microprocessor register bits accessible through the
  949.                use of their addresses in the on-chip RAM.
  950.  
  951.                These are predefined in the assembler:
  952.  
  953.                SFR bit   Description
  954.                ---------------------
  955.                P         PSW bit 0
  956.                OV        PSW bit 2
  957.                RS0       PSW bit 3
  958.                RS1       PSW bit 4
  959.                F0        PSW bit 5
  960.                AC        PSW bit 6
  961.                CY        PSW bit 7
  962.                EX0       IE bit 0
  963.                ET0       IE bit 1
  964.                EX1       IE bit 2
  965.                ET1       IE bit 3
  966.                ES        IE bit 4
  967.                ET2       IE bit 5
  968.                EA        IE bit 7
  969.                PX0       IP bit 0
  970.                PT0       IP bit 1
  971.                PX1       IP bit 2
  972.                PT1       IP bit 3 
  973.  
  974.  
  975.  
  976.  
  977.  
  978.           Micept Instruments Inc. - Cross Assemblers (Series I)          15
  979.  
  980.  
  981.  
  982.                PS        IP bit 4
  983.                PT2       IP bit 5
  984.                IT0       TCON bit 0
  985.                IE0       TCON bit 1
  986.                IT1       TCON bit 2
  987.                IE1       TCON bit 3
  988.                TR0       TCON bit 4
  989.                TF0       TCON bit 5
  990.                TR1       TCON bit 6
  991.                TF1       TCON bit 7
  992.                ACC.0     Accumulator bit 0
  993.                ACC.1     Accumulator bit 1
  994.                ACC.2     Accumulator bit 2
  995.                ACC.3     Accumulator bit 3
  996.                ACC.4     Accumulator bit 4
  997.                ACC.5     Accumulator bit 5
  998.                ACC.6     Accumulator bit 6
  999.                ACC.7     Accumulator bit 7
  1000.                B.0       Register B bit 0
  1001.                B.1       Register B bit 1
  1002.                B.2       Register B bit 2
  1003.                B.3       Register B bit 3
  1004.                B.4       Register B bit 4
  1005.                B.5       Register B bit 5
  1006.                B.6       Register B bit 6
  1007.                B.7       Register B bit 7
  1008.                PSW.0     PSW bit 0
  1009.                PSW.1     PSW bit 1
  1010.                PSW.2     PSW bit 2
  1011.                PSW.3     PSW bit 3
  1012.                PSW.4     PSW bit 4
  1013.                PSW.5     PSW bit 5
  1014.                PSW.6     PSW bit 6
  1015.                PSW.7     PSW bit 7
  1016.                P0.0      Port 0 bit 0
  1017.                P0.1      Port 0 bit 1
  1018.                P0.2      Port 0 bit 2
  1019.                P0.3      Port 0 bit 3
  1020.                P0.4      Port 0 bit 4
  1021.                P0.5      Port 0 bit 5
  1022.                P0.6      Port 0 bit 6
  1023.                P0.7      Port 0 bit 7
  1024.                P1.0      Port 1 bit 0
  1025.                P1.1      Port 1 bit 1
  1026.                P1.2      Port 1 bit 2
  1027.                P1.3      Port 1 bit 3
  1028.                P1.4      Port 1 bit 4
  1029.                P1.5      Port 1 bit 5
  1030.                P1.6      Port 1 bit 6
  1031.                P1.7      Port 1 bit 7 
  1032.  
  1033.  
  1034.  
  1035.  
  1036.  
  1037.           Micept Instruments Inc. - Cross Assemblers (Series I)          16
  1038.  
  1039.  
  1040.  
  1041.                P2.0      Port 2 bit 0
  1042.                P2.1      Port 2 bit 1
  1043.                P2.2      Port 2 bit 2
  1044.                P2.3      Port 2 bit 3
  1045.                P2.4      Port 2 bit 4
  1046.                P2.5      Port 2 bit 5
  1047.                P2.6      Port 2 bit 6
  1048.                P2.7      Port 2 bit 7
  1049.                P3.0      Port 3 bit 0
  1050.                P3.1      Port 3 bit 1
  1051.                P3.2      Port 3 bit 2
  1052.                P3.3      Port 3 bit 3
  1053.                P3.4      Port 3 bit 4
  1054.                P3.5      Port 3 bit 5
  1055.                P3.6      Port 3 bit 6
  1056.                P3.7      Port 3 bit 7
  1057.                IP.0      IP bit 0
  1058.                IP.1      IP bit 1
  1059.                IP.2      IP bit 2
  1060.                IP.3      IP bit 3
  1061.                IP.4      IP bit 4
  1062.                IP.5      IP bit 5
  1063.                IP.6      IP bit 6
  1064.                IP.7      IP bit 7
  1065.                IE.0      IE bit 0
  1066.                IE.1      IE bit 1
  1067.                IE.2      IE bit 2
  1068.                IE.3      IE bit 3
  1069.                IE.4      IE bit 4
  1070.                IE.5      IE bit 5
  1071.                IE.6      IE bit 6
  1072.                IE.7      IE bit 7
  1073.                TCON.0    TCON bit 0
  1074.                TCON.1    TCON bit 1
  1075.                TCON.2    TCON bit 2
  1076.                TCON.3    TCON bit 3
  1077.                TCON.4    TCON bit 4
  1078.                TCON.5    TCON bit 5
  1079.                TCON.6    TCON bit 6
  1080.                TCON.7    TCON bit 7
  1081.                RBP       STS bit 0
  1082.                AM        STS bit 1
  1083.                CPB       STS bit 2
  1084.                BV        STS bit 3
  1085.                SI        STS bit 4
  1086.                RTS       STS bit 5
  1087.                RE        STS bit 6
  1088.                TBF       STS bit 7
  1089.                SER       NSNR bit 0
  1090.                NR0       NSNR bit 1 
  1091.  
  1092.  
  1093.  
  1094.  
  1095.  
  1096.           Micept Instruments Inc. - Cross Assemblers (Series I)          17
  1097.  
  1098.  
  1099.  
  1100.                NR1       NSNR bit 2
  1101.                NR2       NSNR bit 3
  1102.                SES       NSNR bit 4
  1103.                NS0       NSNR bit 5
  1104.                NS1       NSNR bit 6
  1105.                NS2       NSNR bit 7
  1106.                STS.0     STS bit 0
  1107.                STS.1     STS bit 1
  1108.                STS.2     STS bit 2
  1109.                STS.3     STS bit 3
  1110.                STS.4     STS bit 4
  1111.                STS.5     STS bit 5
  1112.                STS.6     STS bit 6
  1113.                STS.7     STS bit 7
  1114.                NSNR.0    NSNR bit 0
  1115.                NSNR.1    NSNR bit 1
  1116.                NSNR.2    NSNR bit 2
  1117.                NSNR.3    NSNR bit 3
  1118.                NSNR.4    NSNR bit 4
  1119.                NSNR.5    NSNR bit 5
  1120.                NSNR.6    NSNR bit 6
  1121.                NSNR.7    NSNR bit 7
  1122.  
  1123.                Note:  Consult  a  data  book  on  the  8044  microprocessor
  1124.                       architecture for more details on the special function
  1125.                       registers.
  1126.  
  1127.  
  1128.                Assembler directives:
  1129.  
  1130.                For this microprocessor,  the standard assembler  directives
  1131.                have been predefined as following:
  1132.                DATA   instead of EQU
  1133.                ORG
  1134.                END
  1135.                DB
  1136.                DW
  1137.                SET
  1138.                DS     instead of RSB
  1139.                DSW    instead of RSW
  1140.  
  1141.  
  1142.           10.2 Intel 8048
  1143.  
  1144.                The reserved words in this assembler are:
  1145.                A, R0,  R1, R2, R3, R4,  R5, R6, R7, @R0, @R1,  BUS, P1, P2,
  1146.                P4, P5, P6, P7,  C, F0, F1, I, TCNTI, CLK,  @A, PSW, T, MB0,
  1147.                MB1, RB0, RB1, TCNT, CNT
  1148.  
  1149.  
  1150.  
  1151.  
  1152.  
  1153.           Micept Instruments Inc. - Cross Assemblers (Series I)          18
  1154.  
  1155.  
  1156.  
  1157.                Assembler directives:
  1158.  
  1159.                For this  microprocessor, the standard  assembler directives
  1160.                have been predefined as following:
  1161.                DATA   instead of EQU
  1162.                ORG
  1163.                END
  1164.                DB
  1165.                DW
  1166.                SET
  1167.                DS     instead of RSB
  1168.                RSW    is not supported, because it is not necessary
  1169.  
  1170.  
  1171.           10.3 Intel 8051/52
  1172.  
  1173.                The reserved words in this assembler are:
  1174.                A, AB, C, DPTR, R0, R1, R2, R3, R4, R5, R6, R7
  1175.  
  1176.  
  1177.                Special Function Registers:
  1178.  
  1179.                The 8051 has Special Function Registers. These constants are
  1180.                words   representing  the   8051  microprocessor   registers
  1181.                accessible through the use of their addresses in the on-chip
  1182.                RAM.
  1183.  
  1184.  
  1185.                These are predefined in this assembler:
  1186.                ACC,  B, PSW, SP,  DPL, DPH, P0,  P1, P2, P3,  IP, IE, TMOD,
  1187.                TCON, TH0, TL0, TH1, TL1, SCON, SBUF, PCON
  1188.  
  1189.                If  the extended  special function  register  set option  is
  1190.                invoked  (x  option),  the  8052  microprocessor  additional
  1191.                special  function  registers  are  also  predefined  in  the
  1192.                assembler.
  1193.  
  1194.                These are:
  1195.                T2CON, TH2, TL2, RCAP2H, RCAP2L
  1196.  
  1197.  
  1198.                Special Function Register Bits:
  1199.  
  1200.                These   Special  Function  Registers  have  bits  which  are
  1201.                directly accessible. These  constants are words representing
  1202.                the 8051 microprocessor register bits accessible through the
  1203.                use of their addresses in the on-chip RAM. 
  1204.  
  1205.  
  1206.  
  1207.  
  1208.  
  1209.           Micept Instruments Inc. - Cross Assemblers (Series I)          19
  1210.  
  1211.  
  1212.  
  1213.                These are predefined in the assembler:
  1214.  
  1215.                SFR bit   Description
  1216.                ---------------------
  1217.                P         PSW bit 0
  1218.                OV        PSW bit 2
  1219.                RS0       PSW bit 3
  1220.                RS1       PSW bit 4
  1221.                F0        PSW bit 5
  1222.                AC        PSW bit 6
  1223.                CY        PSW bit 7
  1224.                EX0       IE bit 0
  1225.                ET0       IE bit 1
  1226.                EX1       IE bit 2
  1227.                ET1       IE bit 3
  1228.                ES        IE bit 4
  1229.                ET2       IE bit 5
  1230.                EA        IE bit 7
  1231.                PX0       IP bit 0
  1232.                PT0       IP bit 1
  1233.                PX1       IP bit 2
  1234.                PT1       IP bit 3
  1235.                PS        IP bit 4
  1236.                PT2       IP bit 5
  1237.                IT0       TCON bit 0
  1238.                IE0       TCON bit 1
  1239.                IT1       TCON bit 2
  1240.                IE1       TCON bit 3
  1241.                TR0       TCON bit 4
  1242.                TF0       TCON bit 5
  1243.                TR1       TCON bit 6
  1244.                TF1       TCON bit 7
  1245.                RI        SCON bit 0
  1246.                TI        SCON bit 1
  1247.                RB8       SCON bit 2
  1248.                TB8       SCON bit 3
  1249.                REN       SCON bit 4
  1250.                SM2       SCON bit 5
  1251.                SM1       SCON bit 6
  1252.                SM0       SCON bit 7
  1253.                RXD       Port 3 bit 0
  1254.                TXD       Port 3 bit 1
  1255.                INT0      Port 3 bit 2
  1256.                INT1      Port 3 bit 3
  1257.                T0        Port 3 bit 4
  1258.                T1        Port 3 bit 5
  1259.                WR        Port 3 bit 6
  1260.                RD        Port 3 bit 7
  1261.                ACC.0     Accumulator bit 0
  1262.                ACC.1     Accumulator bit 1
  1263.  
  1264.  
  1265.  
  1266.  
  1267.  
  1268.           Micept Instruments Inc. - Cross Assemblers (Series I)          20
  1269.  
  1270.  
  1271.  
  1272.                ACC.2     Accumulator bit 2
  1273.                ACC.3     Accumulator bit 3
  1274.                ACC.4     Accumulator bit 4
  1275.                ACC.5     Accumulator bit 5
  1276.                ACC.6     Accumulator bit 6
  1277.                ACC.7     Accumulator bit 7
  1278.                B.0       Register B bit 0
  1279.                B.1       Register B bit 1
  1280.                B.2       Register B bit 2
  1281.                B.3       Register B bit 3
  1282.                B.4       Register B bit 4
  1283.                B.5       Register B bit 5
  1284.                B.6       Register B bit 6
  1285.                B.7       Register B bit 7
  1286.                PSW.0     PSW bit 0
  1287.                PSW.1     PSW bit 1
  1288.                PSW.2     PSW bit 2
  1289.                PSW.3     PSW bit 3
  1290.                PSW.4     PSW bit 4
  1291.                PSW.5     PSW bit 5
  1292.                PSW.6     PSW bit 6
  1293.                PSW.7     PSW bit 7
  1294.                P0.0      Port 0 bit 0
  1295.                P0.1      Port 0 bit 1
  1296.                P0.2      Port 0 bit 2
  1297.                P0.3      Port 0 bit 3
  1298.                P0.4      Port 0 bit 4
  1299.                P0.5      Port 0 bit 5
  1300.                P0.6      Port 0 bit 6
  1301.                P0.7      Port 0 bit 7
  1302.                P1.0      Port 1 bit 0
  1303.                P1.1      Port 1 bit 1
  1304.                P1.2      Port 1 bit 2
  1305.                P1.3      Port 1 bit 3
  1306.                P1.4      Port 1 bit 4
  1307.                P1.5      Port 1 bit 5
  1308.                P1.6      Port 1 bit 6
  1309.                P1.7      Port 1 bit 7
  1310.                P2.0      Port 2 bit 0
  1311.                P2.1      Port 2 bit 1
  1312.                P2.2      Port 2 bit 2
  1313.                P2.3      Port 2 bit 3
  1314.                P2.4      Port 2 bit 4
  1315.                P2.5      Port 2 bit 5
  1316.                P2.6      Port 2 bit 6
  1317.                P2.7      Port 2 bit 7
  1318.                P3.0      Port 3 bit 0
  1319.                P3.1      Port 3 bit 1
  1320.                P3.2      Port 3 bit 2
  1321.                P3.3      Port 3 bit 3
  1322.  
  1323.  
  1324.  
  1325.  
  1326.  
  1327.           Micept Instruments Inc. - Cross Assemblers (Series I)          21
  1328.  
  1329.  
  1330.  
  1331.                P3.4      Port 3 bit 4
  1332.                P3.5      Port 3 bit 5
  1333.                P3.6      Port 3 bit 6
  1334.                P3.7      Port 3 bit 7
  1335.                IP.0      IP bit 0
  1336.                IP.1      IP bit 1
  1337.                IP.2      IP bit 2
  1338.                IP.3      IP bit 3
  1339.                IP.4      IP bit 4
  1340.                IP.5      IP bit 5
  1341.                IP.6      IP bit 6
  1342.                IP.7      IP bit 7
  1343.                IE.0      IE bit 0
  1344.                IE.1      IE bit 1
  1345.                IE.2      IE bit 2
  1346.                IE.3      IE bit 3
  1347.                IE.4      IE bit 4
  1348.                IE.5      IE bit 5
  1349.                IE.6      IE bit 6
  1350.                IE.7      IE bit 7
  1351.                TCON.0    TCON bit 0
  1352.                TCON.1    TCON bit 1
  1353.                TCON.2    TCON bit 2
  1354.                TCON.3    TCON bit 3
  1355.                TCON.4    TCON bit 4
  1356.                TCON.5    TCON bit 5
  1357.                TCON.6    TCON bit 6
  1358.                TCON.7    TCON bit 7
  1359.                SCON.0    SCON bit 0
  1360.                SCON.1    SCON bit 1
  1361.                SCON.2    SCON bit 2
  1362.                SCON.3    SCON bit 3
  1363.                SCON.4    SCON bit 4
  1364.                SCON.5    SCON bit 5
  1365.                SCON.6    SCON bit 6
  1366.                SCON.7    SCON bit 7
  1367.  
  1368.                If  the extended  special function  register  set option  is
  1369.                invoked  (x  option),  the  8052  microprocessor  additional
  1370.                special  function register bits  are also predefined  in the
  1371.                assembler.
  1372.  
  1373.                These are:
  1374.  
  1375.                SFR bit   Description
  1376.                ---------------------
  1377.                CPRL2     T2CON bit 0
  1378.                CT2       T2CON bit 1
  1379.                TR2       T2CON bit 2
  1380.                EXEN2     T2CON bit 3 
  1381.  
  1382.  
  1383.  
  1384.  
  1385.  
  1386.           Micept Instruments Inc. - Cross Assemblers (Series I)          22
  1387.  
  1388.  
  1389.  
  1390.                TCLK      T2CON bit 4
  1391.                RCLK      T2CON bit 5
  1392.                EXF2      T2CON bit 6
  1393.                TF2       T2CON bit 7
  1394.                T2CON.0   T2CON bit 0
  1395.                T2CON.1   T2CON bit 1
  1396.                T2CON.2   T2CON bit 2
  1397.                T2CON.3   T2CON bit 3
  1398.                T2CON.4   T2CON bit 4
  1399.                T2CON.5   T2CON bit 5
  1400.                T2CON.6   T2CON bit 6
  1401.                T2CON.7   T2CON bit 7
  1402.  
  1403.                Note:  Consult  a data book on the 8051, 8052 microprocessor
  1404.                       architectures  for   more  details  on   the  special
  1405.                       function registers.
  1406.  
  1407.  
  1408.                Assembler directives:
  1409.  
  1410.                For this  microprocessor, the standard  assembler directives
  1411.                have been predefined as following:
  1412.                DATA   instead of EQU
  1413.                ORG
  1414.                END
  1415.                DB
  1416.                DW
  1417.                SET
  1418.                DS     instead of RSB
  1419.                DSW    instead of RSW
  1420.  
  1421.  
  1422.           10.4 Intel 8080
  1423.  
  1424.                The reserved words in this assembler are:
  1425.                A, B, C, D, E, H, L, M, BC, DE, HL, SP
  1426.  
  1427.  
  1428.                Assembler directives:
  1429.  
  1430.                For this  microprocessor, the standard  assembler directives
  1431.                have been predefined as following:
  1432.                EQU
  1433.                ORG
  1434.                END
  1435.                DB
  1436.                DW
  1437.                SET
  1438.                DS     instead of RSB
  1439.                RSW    is not supported, because it is not necessary 
  1440.  
  1441.  
  1442.  
  1443.  
  1444.  
  1445.           Micept Instruments Inc. - Cross Assemblers (Series I)          23
  1446.  
  1447.  
  1448.  
  1449.           10.5 Intel 8085
  1450.  
  1451.                The reserved words in this assembler are:
  1452.                A, B, C, D, E, H, L, M, BC, DE, HL, SP
  1453.  
  1454.  
  1455.                Assembler directives:
  1456.  
  1457.                For this  microprocessor, the standard  assembler directives
  1458.                have been predefined as following:
  1459.                EQU
  1460.                ORG
  1461.                END
  1462.                DB
  1463.                DW
  1464.                SET
  1465.                DS     instead of RSB
  1466.                RSW    is not supported, because it is not necessary
  1467.  
  1468.  
  1469.           10.6 Intel 8096
  1470.  
  1471.                There are no reserved words in this assembler.
  1472.  
  1473.  
  1474.                Assembler directives:
  1475.  
  1476.                For this microprocessor,  the standard assembler  directives
  1477.                have been predefined as following:
  1478.                EQU
  1479.                ORG
  1480.                END
  1481.                DCB    instead of DB
  1482.                DCW    instead of DW
  1483.                SET
  1484.                DSB    instead of RSB
  1485.                DSW    instead of RSW
  1486.  
  1487.  
  1488.           10.7 Zilog Z80
  1489.  
  1490.                The reserved words in this assembler are:
  1491.                A,  B, C, D, E, H, L, BC, DE,  HL, SP, IX, IY, M, NC, NZ, Z,
  1492.                P, PE, PO, AF, I, R 
  1493.  
  1494.  
  1495.  
  1496.  
  1497.  
  1498.           Micept Instruments Inc. - Cross Assemblers (Series I)          24
  1499.  
  1500.  
  1501.  
  1502.                Assembler directives:
  1503.  
  1504.                For this  microprocessor, the standard  assembler directives
  1505.                have been predefined as following:
  1506.                EQU
  1507.                ORG
  1508.                END
  1509.                DEFB   instead of DB
  1510.                DEFW   instead of DW
  1511.                DEFL   instead of SET
  1512.                DEFS   instead of RSB
  1513.                RSW    is not supported, because it is not necessary
  1514.  
  1515.  
  1516.           11. BUG REPORTING PROCEDURE          11. BUG REPORTING PROCEDURE
  1517.  
  1518.           Although each software is extensively tested prior to release, no
  1519.           software  is  perfect  and may  contain  a few  bugs.  It  is the
  1520.           intention  of  Micept  Instruments Inc.  to  correct  any genuine
  1521.           problem  that will  be considered  as a  problem by  the company,
  1522.           although  this  is  not  a  warranty that  any  problem  will  be
  1523.           corrected.
  1524.  
  1525.           If  you have any comments or suggestions, please send them to the
  1526.           following address or mail them to us on CompuServe.
  1527.  
  1528.           If you  think you have found a bug  in this software, please take
  1529.           the time to report it. Any report will be helpful, but you should
  1530.           follow these directions:
  1531.  
  1532.                1.   Provide the name and version of the software.
  1533.  
  1534.                2.   Provide  a brief description of the problem and provide
  1535.                     a copy or  listing of the  problem source file.  Please
  1536.                     try to isolate the problem  area in the source and only
  1537.                     provide that part of the source file.
  1538.                3.   Send it to:  Micept Instruments Inc.  CIS:[72130,2513]
  1539.                                  377 Julien St.
  1540.                                  Cap De La Madeleine, PQ
  1541.                                  Canada  G8T 6W6
  1542.  
  1543.  
  1544.           12. UPDATE POLICY          12. UPDATE POLICY
  1545.  
  1546.           Micept  Instruments Inc.  will not  notify  users of  new version
  1547.           releases as improvements are made constantly. If registered users
  1548.           would  like to  keep  current  they may  send  us their  original
  1549.           distribution  disk (the one  with our  label) along  with payment
  1550.           (see order form) to receive the most current version.
  1551.  
  1552.  
  1553.  
  1554.  
  1555.  
  1556.           Micept Instruments Inc. - Cross Assemblers (Series I)          25
  1557.  
  1558.  
  1559.  
  1560.           13. REGISTRATION          13. REGISTRATION
  1561.  
  1562.           The  registration fee, for  each Macro  Cross Assembler  (one per
  1563.           microprocessor) will  licence one  copy of  the expanded  version
  1564.           that you  will receive, for  use on any  one computer at  any one
  1565.           time. The printed manual is optional but recommended and includes
  1566.           a special section on each of the microprocessors of the series.
  1567.  
  1568.           Do not  be misled  by the very  low prices  of these  Macro Cross
  1569.           Assemblers. They are of very high quality, fast and reliable. The
  1570.           only reason why we can offer them to you at such a  low price, is
  1571.           because of the distribution method we have chosen, shareware.
  1572.  
  1573.           Site registrations  are available (see  ordering information  and
  1574.           order form).
  1575.  
  1576.  
  1577.  
  1578.  
  1579.  
  1580.           Micept Instruments Inc. - Cross Assemblers (Series I)          26
  1581.  
  1582.  
  1583.  
  1584.                             APPENDIX A - EXPANDED VERSION                            APPENDIX A - EXPANDED VERSION
  1585.  
  1586.  
  1587.           Registered users get this expanded version of the software.
  1588.           The version supports:
  1589.  
  1590.                - up to 16 nested included files
  1591.                - up to 16 nested conditional assembly
  1592.                - up to 16 nested macros
  1593.                - unlimited number of include files
  1594.                - unlimited number of macros (limited by memory)
  1595.  
  1596.  
  1597.           The expanded directive set includes the following:
  1598.  
  1599.           ----------------------------------------------------------
  1600.           Conditional Assembly
  1601.                IF        Assemble if not equal to zero
  1602.                IFN       Assemble if equal to zero
  1603.                IFC       Assemble if string1 equals string2
  1604.                IFNC      Assemble if string1 not equal to string2
  1605.                ELSE      Reverse condition
  1606.                ENDIF     End of conditional assembly
  1607.                FAIL      Print error message
  1608.           ----------------------------------------------------------
  1609.           Include files
  1610.                INCLUDE   Include file
  1611.           ----------------------------------------------------------
  1612.           Macro Directives
  1613.                MACRO     Define a macro
  1614.                ENDM      End of macro definition
  1615.                EXITM     Skip to the end of a macro definition
  1616.           ----------------------------------------------------------
  1617.           Listing Control
  1618.                FLIST     List false conditions
  1619.                FNOLIST   Do not list false conditions
  1620.                EXPAND    Expand macros
  1621.                NOEXPAND  Do not expand macros
  1622.           ---------------------------------------------------------- 
  1623.  
  1624.  
  1625.  
  1626.  
  1627.  
  1628.                                  ORDERING INFORMATION                                 ORDERING INFORMATION
  1629.  
  1630.           Cat.      Description                                  License
  1631.           No.                                                    Fee
  1632.           ==============================================================
  1633.  
  1634.                     Series I
  1635.                     --------------------------------------------
  1636.           MA44      Macro Cross Assembler for the Intel 8044      $10.00
  1637.           MA48      Macro Cross Assembler for the Intel 8048      $10.00
  1638.           MA51      Macro Cross Assembler for the Intel 8051/52   $10.00
  1639.           MA80      Macro Cross Assembler for the Intel 8080      $10.00
  1640.           MA85      Macro Cross Assembler for the Intel 8085      $10.00
  1641.           MA96      Macro Cross Assembler for the Intel 8096      $10.00
  1642.           MAZ80     Macro Cross Assembler for the Zilog Z80       $10.00
  1643.  
  1644.           SERIES-I  Complete series containing the Macro          $49.00
  1645.                     Cross Assemblers for the Intel 8044,
  1646.                     8048, 8051/52, 8080, 8085, 8096 and
  1647.                     the Zilog Z80 (manual not included)
  1648.  
  1649.           MANUAL-I  Manual for the Macro Cross Assemblers of      $20.00
  1650.                     the series I and containing a special
  1651.                     section for each of the microprocessors
  1652.  
  1653.  
  1654.                     Series II
  1655.                     --------------------------------------------
  1656.           MA03      Macro Cross Assembler for the Motorola 6803   $10.00
  1657.           MA05      Macro Cross Assembler for the Motorola 6805   $10.00
  1658.           MA09      Macro Cross Assembler for the Motorola 6809   $10.00
  1659.           MA65      Macro Cross Assembler for the Rockwell 6502   $10.00
  1660.           MA65C     Macro Cross Assembler for the Rockwell 65C02  $10.00
  1661.           MA68      Macro Cross Assembler for the Motorola 6800   $10.00
  1662.  
  1663.           SERIES-II Complete series containing the Macro          $49.00
  1664.                     Cross Assemblers for the Motorola 6800,
  1665.                     6803, 6805, 6809, and the Rockwell 6502
  1666.                     and 65C02 (manual not included)
  1667.  
  1668.           MANUAL-II Manual for the Macro Cross Assemblers of      $20.00
  1669.                     the series II and containing a special
  1670.                     section for each of the microprocessors
  1671.  
  1672.  
  1673.                     Complete package
  1674.                     --------------------------------------------
  1675.           MICRO-8   Package containing all the Macro Cross       $119.00
  1676.                     Assemblers of the series I and series II
  1677.                     (both manuals included)
  1678.  
  1679.           -----------------------------------------------------------------
  1680.           Note:     The manual is optional but recommended. Only one manual
  1681.                     is required by series.
  1682.  
  1683.  
  1684.  
  1685.  
  1686.  
  1687.                                       ORDER FORM                                      ORDER FORM
  1688.  
  1689.                                                               #92-MC220-001
  1690.  
  1691.           Qty  Cat. No.  Description              Unit Price     Price
  1692.           ---  --------  -----------------------  ----------     ----------
  1693.  
  1694.           ___  ________  _______________________  $_____.___     $_____.___
  1695.  
  1696.           ___  ________  _______________________  $_____.___     $_____.___
  1697.  
  1698.           ___  ________  _______________________  $_____.___     $_____.___
  1699.  
  1700.           ___  ________  _______________________  $_____.___     $_____.___
  1701.  
  1702.           ___  ________  _______________________  $_____.___     $_____.___
  1703.  
  1704.           ___  ________  _______________________  $_____.___     $_____.___
  1705.  
  1706.           ___  ________  _______________________  $_____.___     $_____.___
  1707.  
  1708.           ___  ________  _______________________  $_____.___     $_____.___
  1709.  
  1710.                                                        Subtotal  $_____.___
  1711.  
  1712.                          Add $6.00  Shipping + handling          $_____.___
  1713.                          (outside North America Add $10.00)
  1714.                                                        Subtotal  $_____.___
  1715.  
  1716.                                  Canada residents Add GST        $_____.___
  1717.  
  1718.                                                        Subtotal  $_____.___
  1719.  
  1720.                     Quebec residents Add Provincial Sales Tax    $_____.___
  1721.  
  1722.                                              Total  U.S. dollars $_____.___
  1723.  
  1724.                Payments in Canadian Dollars: Total  Can. dollars $_____.___
  1725.  
  1726.                Exchange rate ______
  1727.  
  1728.           Send your check or money order to:      Micept Instruments Inc.
  1729.                                                   377 Julien St.
  1730.           Specify disk format:                    Cap De La Madeleine, PQ
  1731.           ___ 5 1/4 or ___ 3 1/2                  Canada  G8T 6W6
  1732.  
  1733.           Name:     _______________________________________
  1734.           Company:  _______________________________________
  1735.           Address:  _______________________________________
  1736.                     _______________________________________
  1737.  
  1738.           *    Prices are in U.S. dollars. We accept only U.S. and Canadian
  1739.                funds.  All other will  be refused. Prices  and availability
  1740.                are subject to change without notice. 
  1741.  
  1742.  
  1743.  
  1744.  
  1745.  
  1746.                                         INDEX                                        INDEX
  1747.  
  1748.  
  1749.           ACLIST  . . . . . . . . . .  9     Invocation  . . . . . . . .  2
  1750.           Assembler directives  . . .  9     Label . . . . . . . . . . .  6
  1751.           Binary  . . . . . . . . . .  7     Lines per page  . . . . . .  4
  1752.           Bug reporting procedure . . 24     LIST  . . . . . . . . . . . 10
  1753.           Character constants . . . .  8     Listing file  . . . . . . 3, 4
  1754.           Characters per line . . . .  4     LLEN  . . . . . . . . . . . 11
  1755.           Codes returned to DOS . . .  5     Location counter  . . . . .  8
  1756.           Command line  . . . . . . .  2     Manual  . . . . . . . . . .  2
  1757.           Comment . . . . . . . . . .  6     Microprocessors . . . . . . 14
  1758.           Constants . . . . . . . . .  7          Intel 8044 . . . . . . 14
  1759.           Copyright information . . .  i          Intel 8048 . . . . . . 17
  1760.           DB  . . . . . . . . . . . . 10          Intel 8051/52  . . . . 18
  1761.           Decimal . . . . . . . . . .  7          Intel 8080 . . . . . . 22
  1762.           Default options . . . . . .  5          Intel 8085 . . . . . . 23
  1763.           Directives  . . . . . . . .  9          Intel 8096 . . . . . . 23
  1764.                ACLIST . . . . . . . .  9          Zilog Z80  . . . . . . 23
  1765.                DB . . . . . . . . . . 10     Motorola Hex  . . . . . . 3, 5
  1766.                DW . . . . . . . . . . 10     NOACLIST  . . . . . . . . . 11
  1767.                END  . . . . . . . . . 10     NOLIST  . . . . . . . . . . 11
  1768.                EQU  . . . . . . . . . 10     Numeric constants . . . . .  7
  1769.                LIST . . . . . . . . . 10     Object
  1770.                LLEN . . . . . . . . . 11          code . . . . . . . . .  3
  1771.                NOACLIST . . . . . . . 11          code format  . . . . .  5
  1772.                NOLIST . . . . . . . . 11          file . . . . . . . . .  3
  1773.                ORG  . . . . . . . . . 11          file record size . . .  4
  1774.                PAGE . . . . . . . . . 11     Octal . . . . . . . . . . .  7
  1775.                PLEN . . . . . . . . . 12     Opcode  . . . . . . . . . .  6
  1776.                REDEF  . . . . . . . . 12     Operand . . . . . . . . . .  6
  1777.                RSB  . . . . . . . . . 12     Operators . . . . . . . . .  8
  1778.                RSW  . . . . . . . . . 12     Options . . . . . . . . . .  3
  1779.                SET  . . . . . . . . . 12     Order form  . . . . . . . . 28
  1780.                TITLE  . . . . . . . . 13     Ordering information  . . . 27
  1781.           Disclaimer  . . . . . . . .  i     ORG . . . . . . . . . . . . 11
  1782.           DW  . . . . . . . . . . . . 10     PAGE  . . . . . . . . . . . 11
  1783.           END . . . . . . . . . . . . 10     Page length . . . . . . . .  4
  1784.           Environment variable  . . .  5     PLEN  . . . . . . . . . . . 12
  1785.           EQU . . . . . . . . . . . . 10     Quiet mode  . . . . . . . .  4
  1786.           Expanded version  . . . . . 26     Record size . . . . . . . .  4
  1787.           Expressions . . . . . . . 7, 9     REDEF . . . . . . . . . . . 12
  1788.           Files . . . . . . . . . . .  1     Registration  . . . . . . . 25
  1789.           Hexadecimal . . . . . . . .  7     Reserved words  . . . . . .  7
  1790.           Index . . . . . . . . . . . 29     RSB . . . . . . . . . . . . 12
  1791.           Installation  . . . . . . .  1     RSW . . . . . . . . . . . . 12
  1792.           Intel 8044  . . . . . . . . 14     SET . . . . . . . . . . . . 12
  1793.           Intel 8048  . . . . . . . . 17     Site registration . . . . . 25
  1794.           Intel 8051/52 . . . . . . . 18     Source line . . . . . . . .  5
  1795.           Intel 8080  . . . . . . . . 22     Special sections  . . . . . 14
  1796.           Intel 8085  . . . . . . . . 23     Symbol table  . . . . . . .  4
  1797.           Intel 8096  . . . . . . . . 23     Symbols . . . . . . . . . .  7
  1798.           Intel Hex . . . . . . . . .  5     System requirements . . . .  1
  1799.           Introduction  . . . . . . .  1     Table of contents . . . . . ii
  1800.  
  1801.  
  1802.  
  1803.  
  1804.  
  1805.           Micept Instruments Inc. - Cross Assemblers (Series I)          30
  1806.  
  1807.  
  1808.  
  1809.           TITLE . . . . . . . . . . . 13
  1810.           Update policy . . . . . . . 24
  1811.           Zilog Z80 . . . . . . . . . 23